﻿<?
include_once 'class/tabela.php';

// CLASS PARA INSERIR OS LOGS
class logs extends tabela {
	
    function __construct() {
        global $meubanco;
        parent::__construct('tb_log_usu', $meubanco->id);
    }
	
	public function inserir_log($dados, $msg) {
		global $meubanco;
		
		$dados['log_data'] = date('Y-m-d');
		$dados['log_hora'] = date('H:i:s');
		$dados['log_loja'] = $dados['loja'];
		$dados['log_usuario'] = $_SESSION['ori_usuario']['USU_CODIGO'];
		$dados['log_ip'] = $_SERVER['REMOTE_ADDR'];
		
		// VEFIRICA SE O LOGIN FOI ACEITO
		if($msg == 1){
			$dados['log_mensagem'] = $dados['login'].' fez login no sistema na loja '.$dados['log_loja'].' no dia '.date('d/m/Y').' as '.date('H:i:s').' horas com o ip '.$dados['log_ip'];
			$dados['log_realidado'] = 1;
			// SE O LOGIN FOR ACEITO, GRAVA O LOG E DIRECIONA PARA A PÁGINA PRINCIPAL
			if (parent::inserir($dados, $meubanco->id)) {
				vah_para('page.php');
			}
		}
		
		// VERIFICA SE O LOGIN NÃO FOI ACEITO
		elseif($msg == 2){
			$dados['log_mensagem'] = $dados['login'].' tentou fazer login no sistema no periodo de tempo não autorizado, na loja '.$dados['log_loja'].' no dia '.date('d/m/Y').' as '.date('H:i:s').' horas com o ip '.$dados['log_ip'];
			$dados['log_realidado'] = 0;
			// SE O LOGIN NÃO FOR ACEITO, GRAVA O LOG E DIRECIONA PARA A PÁGINA DE LOGIN
			if (parent::inserir($dados, $meubanco->id)) {
				vah_para('index.php?erro=1');
			}
		}
		
		// VERIFICA SE O LOGIN NÃO FOI ACEITO
		elseif($msg == 3){
			$dados['log_mensagem'] = $dados['login'].' tentou fazer login no sistema em dias não autorizados, na loja '.$dados['log_loja'].' no dia '.date('d/m/Y').' as '.date('H:i:s').' horas com o ip '.$dados['log_ip'];
			$dados['log_realidado'] = 0;
			// SE O LOGIN NÃO FOR ACEITO, GRAVA O LOG E DIRECIONA PARA A PÁGINA DE LOGIN
			if (parent::inserir($dados, $meubanco->id)) {
				vah_para('index.php?erro=2');
			}
		}
	}
	
	public function comparar_hora($h_inicial, $h_final) {
		$hora = date('H:i:s');
		if(($hora < $h_inicial) or ($hora > $h_final)){
			$this->inserir_log($_POST, 2);
		}
		else{
			$this->inserir_log($_POST, 1);
		}
	}
	
	public function dias_semana($dados = '') {		
		// VERIFICA O DIA DA SEMANA
		switch (utf8_decode($dados)) {
			case 'Segunda-Feira':
				$this->comparar_hora('08:00:00', '18:00:00');
				break;
				
			case 'Terça-Feira':
				$this->comparar_hora('08:00:00', '18:00:00');
				break;
				
			case 'Quarta-Feira':
				$this->comparar_hora('08:00:00', '18:00:00');
				break;
				
			case 'Quinta-Feira':
				$this->comparar_hora('08:00:00', '18:00:00');
				break;
				
			case 'Sexta-Feira':
				$this->comparar_hora('08:00:00', '18:00:00');
				break;
				
			case 'Sábado':
				$this->comparar_hora('08:00:00', '12:00:00');
				break;
				
			case 'Domingo':
				$this->inserir_log($_POST, 3);
				break;
		}
	}
}
?>